package com.touzhijia.authority.domain.entity;

import lombok.Data;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.io.Serializable;
import java.util.Date;

/**
 * 作者： lzw<br/>
 * 创建时间：2018-03-14 17:03 <br/>
 */
@Data
public class User implements Serializable {

    /**
     * 用户类型，0：手动创建的用户
     */
    public static final int User_Type_0 = 0;

    /**
     * 用户类型，1：LDAP服务中的用户
     */
    public static final int User_Type_1 = 1;

    /**
     * LDAP服务器是否存在用户，0：不存在
     */
    public static final int Ldap_Exist_0 = 0;

    /**
     * LDAP服务器是否存在用户，1：存在
     */
    public static final int Ldap_Exist_1 = 1;

    /**
     * 帐号是否锁定，0：未锁定
     */
    public static final int Locked_0 = 0;

    /**
     * 帐号是否锁定，1：锁定
     */
    public static final int Locked_1 = 1;

    /**
     * 是否启用，0：禁用
     */
    public static final int Enabled_0 = 0;

    /**
     * 是否启用，1：启用
     */
    public static final int Enabled_1 = 1;

    /**
     * 数据库主键
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * 登录名
     */
    private String username;

    /**
     * 密码
     */
    private String password;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 手机号
     */
    private String telephone;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 组织机构
     */
    private String memberOf;

    /**
     * 用户类型，0：手动创建的用户，1：LDAP服务中的用户
     */
    private Integer userType;

    /**
     * LDAP服务器是否存在用户，0：不存在；1：存在
     */
    private Integer ldapExist;

    /**
     * 帐号是否锁定，0：未锁定；1：锁定
     */
    private Integer locked;

    /**
     * 是否启用，0：禁用；1：启用
     */
    private Integer enabled;

    /**
     * 说明
     */
    private String description;

    /**
     * 创建时间
     */
    private Date createAt;

    /**
     * 更新时间
     */
    private Date updateAt;
}
